{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Adversarial-Robustness-Toolbox for scikit-learn RandomForestClassifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.datasets import load_iris\n",
    "\n",
    "import numpy as np\n",
    "from matplotlib import pyplot as plt\n",
    "\n",
    "from art.classifiers import SklearnClassifier\n",
    "from art.attacks import ZooAttack\n",
    "from art.utils import load_mnist\n",
    "\n",
    "import warnings\n",
    "warnings.filterwarnings('ignore')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1 Training scikit-learn RandomForestClassifier and attacking with ART Zeroth Order Optimization attack"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_adversarial_examples(x_train, y_train):\n",
    "    \n",
    "    # Create and fit RandomForestClassifier\n",
    "    model = RandomForestClassifier()\n",
    "    model.fit(X=x_train, y=y_train)\n",
    "\n",
    "    # Create ART classfier for scikit-learn RandomForestClassifier\n",
    "    art_classifier = SklearnClassifier(model=model)\n",
    "\n",
    "    # Create ART Zeroth Order Optimization attack\n",
    "    zoo = ZooAttack(classifier=art_classifier, confidence=0.0, targeted=False, learning_rate=1e-1, max_iter=20,\n",
    "                    binary_search_steps=10, initial_const=1e-3, abort_early=True, use_resize=False, \n",
    "                    use_importance=False, nb_parallel=1, batch_size=1, variable_h=0.2)\n",
    "\n",
    "    # Generate adversarial samples with ART Zeroth Order Optimization attack\n",
    "    x_train_adv = zoo.generate(x_train)\n",
    "\n",
    "    return x_train_adv, model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.1 Utility functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_data(num_classes):\n",
    "    x_train, y_train = load_iris(return_X_y=True)\n",
    "    x_train = x_train[y_train < num_classes][:, [0, 1]]\n",
    "    y_train = y_train[y_train < num_classes]\n",
    "    x_train[:, 0][y_train == 0] *= 2\n",
    "    x_train[:, 1][y_train == 2] *= 2\n",
    "    x_train[:, 0][y_train == 0] -= 3\n",
    "    x_train[:, 1][y_train == 2] -= 2\n",
    "    \n",
    "    x_train[:, 0] = (x_train[:, 0] - 4) / (9 - 4)\n",
    "    x_train[:, 1] = (x_train[:, 1] - 1) / (6 - 1)\n",
    "    \n",
    "    return x_train, y_train"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_results(model, x_train, y_train, x_train_adv, num_classes):\n",
    "    fig, axs = plt.subplots(1, num_classes, figsize=(num_classes * 5, 5))\n",
    "\n",
    "    colors = ['orange', 'blue', 'green']\n",
    "\n",
    "    for i_class in range(num_classes):\n",
    "\n",
    "        # Plot difference vectors\n",
    "        for i in range(y_train[y_train == i_class].shape[0]):\n",
    "            x_1_0 = x_train[y_train == i_class][i, 0]\n",
    "            x_1_1 = x_train[y_train == i_class][i, 1]\n",
    "            x_2_0 = x_train_adv[y_train == i_class][i, 0]\n",
    "            x_2_1 = x_train_adv[y_train == i_class][i, 1]\n",
    "            if x_1_0 != x_2_0 or x_1_1 != x_2_1:\n",
    "                axs[i_class].plot([x_1_0, x_2_0], [x_1_1, x_2_1], c='black', zorder=1)\n",
    "\n",
    "        # Plot benign samples\n",
    "        for i_class_2 in range(num_classes):\n",
    "            axs[i_class].scatter(x_train[y_train == i_class_2][:, 0], x_train[y_train == i_class_2][:, 1], s=20,\n",
    "                                 zorder=2, c=colors[i_class_2])\n",
    "        axs[i_class].set_aspect('equal', adjustable='box')\n",
    "\n",
    "        # Show predicted probability as contour plot\n",
    "        h = .01\n",
    "        x_min, x_max = 0, 1\n",
    "        y_min, y_max = 0, 1\n",
    "\n",
    "        xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))\n",
    "\n",
    "        Z_proba = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])\n",
    "        Z_proba = Z_proba[:, i_class].reshape(xx.shape)\n",
    "        im = axs[i_class].contourf(xx, yy, Z_proba, levels=[0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0],\n",
    "                                   vmin=0, vmax=1)\n",
    "        if i_class == num_classes - 1:\n",
    "            cax = fig.add_axes([0.95, 0.2, 0.025, 0.6])\n",
    "            plt.colorbar(im, ax=axs[i_class], cax=cax)\n",
    "\n",
    "        # Plot adversarial samples\n",
    "        for i in range(y_train[y_train == i_class].shape[0]):\n",
    "            x_1_0 = x_train[y_train == i_class][i, 0]\n",
    "            x_1_1 = x_train[y_train == i_class][i, 1]\n",
    "            x_2_0 = x_train_adv[y_train == i_class][i, 0]\n",
    "            x_2_1 = x_train_adv[y_train == i_class][i, 1]\n",
    "            if x_1_0 != x_2_0 or x_1_1 != x_2_1:\n",
    "                axs[i_class].scatter(x_2_0, x_2_1, zorder=2, c='red', marker='X')\n",
    "        axs[i_class].set_xlim((x_min, x_max))\n",
    "        axs[i_class].set_ylim((y_min, y_max))\n",
    "\n",
    "        axs[i_class].set_title('class ' + str(i_class))\n",
    "        axs[i_class].set_xlabel('feature 1')\n",
    "        axs[i_class].set_ylabel('feature 2')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 2 Example: Iris dataset"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### legend\n",
    "- colored background: probability of class i\n",
    "- orange circles: class 1\n",
    "- blue circles: class 2\n",
    "- green circles: class 3\n",
    "- red crosses: adversarial samples for class i"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x360 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "num_classes = 2\n",
    "x_train, y_train = get_data(num_classes=num_classes)\n",
    "x_train_adv, model = get_adversarial_examples(x_train, y_train)\n",
    "plot_results(model, x_train, y_train, x_train_adv, num_classes)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 4 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "num_classes = 3\n",
    "x_train, y_train = get_data(num_classes=num_classes)\n",
    "x_train_adv, model = get_adversarial_examples(x_train, y_train)\n",
    "plot_results(model, x_train, y_train, x_train_adv, num_classes)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 3 Example: MNIST"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.1 Load and transform MNIST dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "(x_train, y_train), (x_test, y_test), min_, max_ = load_mnist()\n",
    "\n",
    "n_samples_train = x_train.shape[0]\n",
    "n_features_train = x_train.shape[1] * x_train.shape[2] * x_train.shape[3]\n",
    "n_samples_test = x_test.shape[0]\n",
    "n_features_test = x_test.shape[1] * x_test.shape[2] * x_test.shape[3]\n",
    "\n",
    "x_train = x_train.reshape(n_samples_train, n_features_train)\n",
    "x_test = x_test.reshape(n_samples_test, n_features_test)\n",
    "\n",
    "y_train = np.argmax(y_train, axis=1)\n",
    "y_test = np.argmax(y_test, axis=1)\n",
    "\n",
    "n_samples_max = 200\n",
    "x_train = x_train[0:n_samples_max]\n",
    "y_train = y_train[0:n_samples_max]\n",
    "x_test = x_test[0:n_samples_max]\n",
    "y_test = y_test[0:n_samples_max]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.2 Train RandomForestClassifier classifier"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = RandomForestClassifier(n_estimators='warn', criterion='gini', max_depth=None, min_samples_split=2, \n",
    "                               min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features='auto', \n",
    "                               max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, \n",
    "                               bootstrap=True, oob_score=False, n_jobs=None, random_state=None, verbose=0, \n",
    "                               warm_start=False, class_weight=None)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n",
       "            max_depth=None, max_features='auto', max_leaf_nodes=None,\n",
       "            min_impurity_decrease=0.0, min_impurity_split=None,\n",
       "            min_samples_leaf=1, min_samples_split=2,\n",
       "            min_weight_fraction_leaf=0.0, n_estimators=10, n_jobs=None,\n",
       "            oob_score=False, random_state=None, verbose=0,\n",
       "            warm_start=False)"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.fit(X=x_train, y=y_train)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.3 Create and apply Zeroth Order Optimization Attack with ART"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "art_classifier = SklearnClassifier(model=model)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "zoo = ZooAttack(classifier=art_classifier, confidence=0.0, targeted=False, learning_rate=1e-1, max_iter=100,\n",
    "                binary_search_steps=20, initial_const=1e-3, abort_early=True, use_resize=False, \n",
    "                use_importance=False, nb_parallel=10, batch_size=1, variable_h=0.25)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "scrolled": false
   },
   "outputs": [],
   "source": [
    "x_train_adv = zoo.generate(x_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "x_test_adv = zoo.generate(x_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.4 Evaluate RandomForestClassifier on benign and adversarial samples"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Benign Training Score: 0.9850\n"
     ]
    }
   ],
   "source": [
    "score = model.score(x_train, y_train)\n",
    "print(\"Benign Training Score: %.4f\" % score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(x_train[0, :].reshape((28, 28)))\n",
    "plt.clim(0, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Benign Training Predicted Label: 5\n"
     ]
    }
   ],
   "source": [
    "prediction = model.predict(x_train[0:1, :])[0]\n",
    "print(\"Benign Training Predicted Label: %i\" % prediction)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Adversarial Training Score: 0.3300\n"
     ]
    }
   ],
   "source": [
    "score = model.score(x_train_adv, y_train)\n",
    "print(\"Adversarial Training Score: %.4f\" % score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(x_train_adv[0, :].reshape((28, 28)))\n",
    "plt.clim(0, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Adversarial Training Predicted Label: 3\n"
     ]
    }
   ],
   "source": [
    "prediction = model.predict(x_train_adv[0:1, :])[0]\n",
    "print(\"Adversarial Training Predicted Label: %i\" % prediction)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Benign Test Score: 0.6300\n"
     ]
    }
   ],
   "source": [
    "score = model.score(x_test, y_test)\n",
    "print(\"Benign Test Score: %.4f\" % score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(x_test[0, :].reshape((28, 28)))\n",
    "plt.clim(0, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Benign Test Predicted Label: 7\n"
     ]
    }
   ],
   "source": [
    "prediction = model.predict(x_test[0:1, :])[0]\n",
    "print(\"Benign Test Predicted Label: %i\" % prediction)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Adversarial Test Score: 0.3050\n"
     ]
    }
   ],
   "source": [
    "score = model.score(x_test_adv, y_test)\n",
    "print(\"Adversarial Test Score: %.4f\" % score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 288x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.matshow(x_test_adv[0, :].reshape((28, 28)))\n",
    "plt.clim(0, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Adversarial Test Predicted Label: 9\n"
     ]
    }
   ],
   "source": [
    "prediction = model.predict(x_test_adv[0:1, :])[0]\n",
    "print(\"Adversarial Test Predicted Label: %i\" % prediction)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
